package org.yaac.shared.egql;

import java.util.List;


/**
 * AutoBean
 * 
 * @author Max Zhu (thebbsky@gmail.com)
 *
 */
public interface Result {

	/**
	 * @return statementKey, the unique identifier for client side to determine which statement this result belong to
	 */
	String getStatementKey();

	void setStatementKey(String statementKey);

	/**
	 * @return status of the statement
	 */
	ResultStatus getStatus();

	void setStatus(ResultStatus status);

	/**
	 * @return timestamp or client side to order result
	 */
	// TODO : order results in client side?
	Long getTimestamp();

	void setTimestamp(Long timestamp);

	List<List<ResultCell>> getResult();

	void setResult(List<List<ResultCell>> result);

}